<doc>
<contents_area>

<h3>History For PyDev Extensions</h3>
<br>
	<ul>
		<strong>Note: this history only takes into account what was done in PyDev Extensions before it was merged with PyDev.</strong><br><br>


		<ul>
			<li><h4>Release 1.4.8</h4></li>
			<ul>
			<li>Created public API for starting/finishing debug server</li>
			<li>Import based on unresolved variables works correctly when the document is changed</li>
			<li>Ignore error works correctly when the document is changed</li>
			<li>No longer showing the replace button for the search</li>
		    </ul>
	    </ul>
			
		<ul>
			<li><h4>Release 1.4.7</h4></li>
			<ul>
				<li>IronPython support (version 2.6 upwards)</li>
				<li>The interactive console can be used on the remote debugger</li>
				<li>Remote debugger properly redirects contents from the server on multiple runs.</li>
				<li>Providing context-independent completions when other completions are not available (until now, it only gave those completions for method parameters)</li>
				<li>The number of chars required to show the context-insensitive completion can now be customized.</li>
				<li>Fixed problem with Eclipse 3.5: "Invalid Thread Access" when trying to rename a class</li>
		    </ul>
	    </ul>
	
		<ul>
			<li><h4>Release 1.4.6</h4></li>
			<ul>
				<li>Auto-import for from __future__ import with_statement will add a 'with' token instead of a with_statement token</li>
				<li>Globals browser improved (only for Eclipse 3.3 onwards, older versions will have the old interface):</li>
			    <ul>
				    <li>Can filter with working sets</li>
				    <li>Can match based on module names. E.g.: django.A would match all the django classes/methods/attributes starting with 'A'</li>
			    </ul>
		    </ul>
	    </ul>
	
	
		<ul>
			<li><h4>Release 1.4.5</h4></li>
			<ul>
				<li>Derived resources are no longer analyzed</li>
				<li>No longer giving spurios warnings when file being analyzed is removed</li>
			</ul>
		</ul>
				
	    <ul>
	        <li><h4>Release 1.4.4 </h4></li>
	        <ul>
	            <li>This release fixes a critical bug when configuring the interpreter (if no 
	            environment variables were specified, it was not possible to configure an interpreter)
	            </li>
	        </ul>
	    </ul>
	
	    <ul>
	        <li><h4>Release 1.4.3</h4></li>
	        <ul>
	            <li>Fixed racing conditions in the context-insensitive indexing which could corrupt the index.</li>
	            <li>Search references working on Eclipse 3.3 and Eclipse 3.4</li>
	            <li>Lambda properly treated as a new context for code-analysis</li>
	            <li>Analysis is now recognizing __name__</li>
	            <li>Analysis now marks variables used when accessed with augstore (+=)</li>
	            <li>Some definitions were not properly indexed on some assign cases</li>
	        </ul>
	    </ul>
	
	    <ul>
	        <li><h4>Release 1.4.2</h4></li>
	        <ul>
	            <li>Context insensitive code-completion working with <strong>multiple interpreters</strong></li>
	            <li>Fixed code analysis problem on staticmethod</li>
	            <li>Giving proper warning on version mismatch</li>
	            <li>Remote debugger fix</li>
	        </ul>
	    </ul>
	
	
	    <ul>
	        <li><h4>Release 1.4</h4></li>
	        <ul>
	            <li><strong>Python 3.0</strong> supported</li>
	            <li><strong>Python 2.6</strong> supported</li>
	            <li><strong>Code-analysis</strong>: Was locking caches for too long (which could end up having stale results)</li>
	        </ul>
	    </ul>


	    <ul>
	        <li><h4>Release 1.3.24</h4></li>
	        <ul>
	            <li><strong>Code-analysis</strong>: Import was not recognized on code-analysis on some specific cases</li>
	        </ul>
	    </ul>
	
	    <ul>
	        <li><h4>Release 1.3.23</h4></li>
	        <ul>
	            <li><strong>Code-analysis</strong>: Fixed condition that could make code-analysis get into a halt depending on the code structure</li>
	            <li><strong>Remote Debugger</strong>: Can properly debug multiple processes concurrently</li>
	            <li><strong>Remote Debugger</strong>: Makes the proper setup of breakpoints when pydevd.settrace is called with suspend=False</li>
	        </ul>
	    </ul>
	
	
	    <ul>
	        <li><h4>Release 1.3.22</h4></li>
	        <ul>
	            <li><strong>Code-analysis</strong>: Option to analyze only active editor (window > preferences > PyDev > builders)</li>
	            <li><strong>Code-analysis</strong>: works on case where imported module has same name of builtin.</li>
	        </ul>
	    </ul>
	    
	    <ul>
	        <li><h4>Release 1.3.21</h4></li>
	        <ul>
	            <li>Internal release</li>
	        </ul>
	    </ul>
	    
	    <ul>
	        <li><h4>Release 1.3.20</h4></li>
	        <ul>
	            <li><strong>Code Analysis</strong>: Show error if using token not defined in __all__ in wild import.</li>
	            <li><strong>Search</strong>: Working with eclipse 3.4.</li>
	        </ul>
	    </ul>
	
	
	    <ul>
	        <li><h4>Release 1.3.19</h4></li>
	        <ul>
	            <li><strong>Code Analysis</strong>: Not all unused imports are shown in the message anymore (could give problems saving workspace).</li>
	            <li><strong>Code Analysis</strong>: Fixed problem on double cycle in list comprehension.</li>
	            <li><strong>Interpreter config</strong>: The initial parse of the modules is much faster.</li>
	        </ul>
	    </ul>
	
	
	    <ul>
	        <li><h4>Release 1.3.18</h4></li>
	        <ul>
	            <li><strong>Auto-import</strong>: Groups imports when possible.</li>
	            <li><strong>Auto-import</strong>: Doesn't bring imports for completions already in the document even if a parse is not successful.</li>
	            <li><strong>Organize Imports (ctrl+shift+O)</strong>: Suggests imports to the undefined tokens in the editor.</li>
	            <li><strong>Import quick-fix</strong>: Icons correspondent to the element being imported.</li>
	        </ul>
	    </ul>
	    
	    <ul>
	        <li><h4>Release 1.3.17</h4></li>
	        <ul>
	            <li>Bug-fix release.</li>
	        </ul>
	    </ul>
	    
	    <ul>
	        <li><h4>Release 1.3.16</h4></li>
	        <ul>
	            <li><strong>Code Analysis</strong>: __path__ Not correctly found on some situations.</li>
	            <li><strong>Local rename (ctrl+2+r)</strong>: Positions correctly ordered for tabbing.</li>
	        </ul>
	    </ul>
	    
	    <ul>
	        <li><h4>Release 1.3.15</h4></li>
	        <ul>
	        <li><strong>Globals Browser</strong>: Was not correctly showing definition on a case with multiple projects when one did not have the python nature configured.</li>
	        <li><strong>Code Analysis</strong>: False positive: Classes defined within a class context are correctly found when later accessed in the parent context.</li>
	        <li><strong>Interactive console integration</strong></li>
	            <ul>
	                <li>Context insensitive completions with auto-import in console</li>
	                <li>Ctrl+Alt+Enter: can be used to:</li>
	                <ul>
	                    <li>Create console if no console exists</li> 
	                    <li>Send selected text to console</li>
	                    <li>Make execfile for current file if there's no selected text</li>
	                </ul>
	            </ul>
	        </ul>
	    </ul>

		<ul>
			<li><h4>Release 1.3.14</h4></li>
			<ul>
				<li><strong>Local renames</strong>: scoping issues.</li>
				<li><strong>Local renames</strong>: comments/strings only renamed in local scope for local variable.</li>
				<li><strong>False positive: undefined variable</strong>: a base-class could be flagged as undefined if used in a method scope.</li>
				<li><strong>Remote Debugger</strong>: easier way to specify path translations between a remote machine and a local machine 
				(constant must be set in org.python.pydev.debug/pysrc/pydevd_file_utils.py -- see comments on module) .</li>
			</ul>
		</ul>
		
		<ul>
			<li><h4>Release 1.3.13</h4></li>
			<ul>
				<li><strong>Debug Console</strong>: will print exceptions raised during the evaluation.</li>
				<li><strong>Debug Console</strong>: will print the result of the evaluation if a valid statement is sent (so, 'print' is not needed for simple evaluations anymore).</li>
			</ul>
		</ul>
		


		<li><h4>Release 1.3.12</h4></li>
		<ul>
			<li><strong>Mark occurrences</strong>: only requested on mouse-clicks and cursor changes.</li>
			<li><strong>Code-Analysis</strong>: No longer running in UI-Thread (bug which slowed things down in 1.3.10 and 1.3.11).</li>
			<li><strong>Code-Analysis</strong>: Cache optimizations.</li>
			<li><strong>Code-Analysis</strong>: Fixed 'statement without effect' when raising exception with arguments without using the exception constructor.</li>
			<li><strong>Code-Analysis</strong>: Fixed 'statement without effect' on tuple creation.</li>
			<li><strong>Code-Analysis</strong>: __path__ found for packages (__init__.py files).</li>
			<li><strong>Context-insensitive info</strong>: Correctly updated when code-analysis is off (or if file is not analyzed).</li>
		</ul>
	
		<li><h4>Release 1.3.11</h4></li>
		<ul>
			<li><strong>Code-analysis</strong>: Doesn't report 'statement without effect' within yield.</li>
			<li><strong>Code-analysis</strong>: @DynamicAttrs now works in direct class access (not only on instance access from a class).</li>
			<li><strong>Code-analysis</strong>: Names to consider in global do not trigger undefined variables when they have some attribute access.</li>
			<li><strong>Code-analysis</strong>: Accessing locals() will mark local variables as read.</li>
			<li><strong>Code-analysis</strong>: No indentation warnings on multiline strings that use double quotes.</li>
		</ul>
	
	
		<li><h4>Release 1.3.10</h4></li>
		<ul>
			<li><strong>Code-analysis</strong>: Doesn't report 'statement without effect' within list comprehension.</li>
			<li><strong>Context insensitive code completion</strong>: Shows contents of zips/eggs/jars</li>
			<li><strong>Go to definition</strong>: Working with zips/eggs/jars.</li>
		</ul>
	
		<li><h4>Release 1.3.9</h4></li>
		
		<ul>
			<li><strong>Code-analysis</strong>: detects bad indentation (wrong number of indent chars).</li>
			
			<li><strong>Code-analysis</strong>: Class may be marked with '<strong>@DynamicAttrs</strong>' so that the code-analysis doesn't 
			give undefined variable errors. See <a href="manual_adv_code_analysis.html#Passing_info_to_code_analysis">Code Analysis</a> for more details.</li>
			
			<li><strong>Mark-Occurrences</strong>: Fix: a class that had a call would not be recognized sometimes.</li>
			<li><strong>Rename Refactoring</strong>: Fix: when different heuristics yielded the same result the text could become garbled.</li>
		</ul>
		
		<li><h4>Release 1.3.8</h4></li>
        <ul>
			<li><strong>Code-analysis</strong>: Detects mixing of spaces and tabs.</li>
			<li><strong>Code-analysis</strong>: Reimport not flagged when inside of try..except ImportError.</li>
        </ul>
	
	
		<li><h4>Release 1.3.7</h4></li>
        <ul>
			<li><strong>Support for Eclipse 3.3</strong></li>
            <li>Bug-Fixes!</li>
        </ul>
	
		<li><h4>Release 1.3.6</h4></li>
        <ul>
            <li>Bug-Fixes! </li>
        </ul>

		<li><h4>Release 1.3.5</h4></li>
        <ul>
            <li><strong>Auto-Import:</strong> </li>
            <ul>
                <li>Import is now set in correct line even with multi-line imports.</li>
                <li>Added option to disable the introduction of auto-imports.</li>
                <li>Added option to remove modules that start with '_' from the imports (so, tokens would have to be found in __init__.py files).</li>
            </ul>
            <li><strong>Code Analysis:</strong> Having a list comprehension with a subscript was not being treated correctly.</li>
            <li><strong>Debugger:</strong> Working with jython.</li>
            <li><strong>Debugger:</strong> Working with wxPython.</li>
        </ul>
				
		<li><h4>Release 1.3.4</h4></li>
		<ul>
			<li><strong>Mark Occurrences:</strong> 'global' used in the global scope is correctly treated.</li>
			<li><strong>Code Analysis:</strong> __builtins__ considered in global namespace</li>
		</ul>
		
		<li><h4>Release 1.3.3</h4></li>
		<ul>
			<li><strong>Quick-fix:</strong> When an import is added from the auto-import quick-fix, a code-analysis is requested right after it.</li>
			<li>Minor bugs fixed.</li>
		</ul>
	
        <li><h4>Release 1.3.2</h4></li>
        <ul>
            <li><strong>Fix:</strong> The vmargs in the interactive console are now only really passed to the jython process</li>
            <li><strong>Fix:</strong> Rename refactoring was not getting some references that mapped to imports initially (and not directly to classes or functions)</li>
            <li><strong>Fix:</strong> Mark Occurrences marks correctly the keyword parameters in referencing calls</li>
        </ul>
        
		<li><h4>Release 1.3.1</h4></li>
		<ul>
			<li><strong>Interactive Console</strong>: jython process can receive vmargs (configured in the preferences page)</li>
			<li><strong>Code-Completion</strong>: auto-import completions will not be brought for tokens in the current module</li>
			<li><strong>Code-Completion</strong>: auto-import inserted as last import in imports list (so, __future__ imports will remain in the 1st position)</li>
			<li><strong>Code-Analysis</strong>: Only adds unused parameters in methods that have some statement that is not a 'pass' or string</li>
			<li><strong>Fix: Find Occurrences</strong>: will not 'overlap' occurrences anymore</li>
			<li><strong>Fix: Code-Analysis</strong>: deep attribute access after finding __getattr__ does not signal unresolved import errors anymore</li>
		</ul>
	
		
		
		<li><h4>Release 1.3.0</h4></li>
		<ul>
		<li><strong>Find References</strong>: Ctrl+Shift+G can be used to find the references to the selected token in the editor</li>
		<li><strong>Fix: Code-analysis</strong>: Fixed false positive for statement with no effect</li>
		</ul>

		<li><h4>Release 1.2.8</h4></li>
		<ul>
			<li><strong>Code-analysis</strong>: when a compare statement is found out of a test scope, that's reported as a warning</li>
			<li><strong>Mark Occurrences</strong>: new option to choose whether strings and comments should be highlighted</li>
			<li><strong>Simple Completions</strong>: some keywords were removed from the default list (the 2-letter ones because they're barely worth it and those related to 'try', as there's already an assistant that creates 'try' blocks)</li>
			<li><strong>Rename refactoring / Mark Occurrences</strong>: matches in multi-line strings are now correct</li>
		</ul>
		<li><h4>Release 1.2.7</h4></li>
		<ul>
			<li>Mark occurrences and rename now will also get the tokens in comments and strings</li>
			<li>Rename refactoring bugfixes (but still not final)</li>
			<li>The remote debugger port can now be specified</li>
		</ul>
	</ul>
<br/>
<br/>

</contents_area>



<right_area>
</right_area>


<image_area></image_area>


<quote_area></quote_area>
</doc>
